package day10;

import java.util.PriorityQueue;

/**
 * @author ZJX
 * @version 1.0
 * @descption
 * @since 2025/10/12 20:23
 */
public class N {

    public int findKthLargest(int[] nums, int k) {
        // 小顶堆：容量为 k
        PriorityQueue<Integer> heap = new PriorityQueue<>();

        for (int num : nums) {
            heap.offer(num); // 入堆
            if (heap.size() > k) {
                heap.poll(); // 弹出最小的，保持堆中是最大的 k 个数
            }
        }

        // 堆顶就是第 k 大
        return heap.peek();
    }

    public static void main(String[] args) {
        int[] i = {3, 2, 1, 5, 6, 4};
        N n = new N();
        System.out.println(n.findKthLargest(i, 2));
    }
}

